Today's standard computer architectures call for a number of peripheral devices such as disk drives, RAID devices, CD-ROM drives, modems, monitors, keyboards, printers, scanners, etc. to be operatively coupled to a computer system by peripheral buses. Peripheral buses are simply groups of conductors (or lines) designed to carry data and control signals to and from peripheral devices. A data signal is a signal representing a data bit.
An example of a peripheral bus is the small computer systems interface (SCSI) bus. The SCSI bus is designed to operate in conjunction with a computer system to provide an interface to SCSI standard peripheral devices.
SCSI buses may have signal integrity problems, especially when used on long cables or at high signaling speeds. Depending on the SCSI bus environment—cabling, backplane, drives, host adapter board (HAB), etc., a CRC/parity error on the SCSI bus may occur. A CRC/parity error is defined as a CRC error or a parity error. Even though a CRC/parity error on the SCSI bus is very rare, it does occur. In order to evaluate how the devices in the SCSI environment respond to a CRC/parity error, a CRC/parity error on the SCSI bus is intentionally generated during an input/output (I/O) test. Currently there is not good means for purposefully generating such a CRC/parity error.
One conventional way to generate a CRC/parity error is to intentionally set up a poor bus environment by using a poorly designed component (cabling, backplane, drives, HAB). However, using a poorly designed component (cabling, backplane, drives, HAB) is impractical, since these products are designed to meet all the specifications of the SCSI environment.
Another conventional way to generate a CRC/parity error is to use specifically designed hardware to generate a CRC/parity error. However, this method would add an additional device that is an outside stimulus, not normally part of the SCSI bus environment. Moreover, if this additional device is used, one would be testing how the device under test (DUT) interfaces with the test device, rather than how the DUT interfaces with a device that will be part of the final product. Furthermore, the outside stimulus device does not currently exist for Ultra320 SCSI or the current generation of SCSI that is being tested.
Thus, it would be desirable to have a practical and convenient method and apparatus for generating a CRC/parity error in the SCSI environment.